<?php
/**
 * Intreface DAO
 *
 * @author: http://phpdao.com
 * @date: 2015-05-26 14:36
 */
interface RegisterationDAO{

	/**
	 * Get Domain object by primry key
	 *
	 * @param String $id primary key
	 * @Return Registeration 
	 */
	public function load($id);

	/**
	 * Get all records from table
	 */
	public function queryAll();
	
	/**
	 * Get all records from table ordered by field
	 * @Param $orderColumn column name
	 */
	public function queryAllOrderBy($orderColumn);
	
	/**
 	 * Delete record from table
 	 * @param registeration primary key
 	 */
	public function delete($register_id);
	
	/**
 	 * Insert record to table
 	 *
 	 * @param Registeration registeration
 	 */
	public function insert($registeration);
	
	/**
 	 * Update record in table
 	 *
 	 * @param Registeration registeration
 	 */
	public function update($registeration);	

	/**
	 * Delete all rows
	 */
	public function clean();

	public function queryByFirstName($value);

	public function queryByLastName($value);

	public function queryByEmail($value);

	public function queryByPhone($value);

	public function queryByCityName($value);

	public function queryByStateId($value);

	public function queryByCountryId($value);

	public function queryByAddress($value);

	public function queryByFax($value);

	public function queryByCompany($value);

	public function queryByPhoto($value);

	public function queryByZip($value);

	public function queryByUserId($value);

	public function queryByCreatedBy($value);

	public function queryByCreateDate($value);

	public function queryByUpdatedBy($value);

	public function queryByUpdatedDate($value);

	public function queryByStatus($value);


	public function deleteByFirstName($value);

	public function deleteByLastName($value);

	public function deleteByEmail($value);

	public function deleteByPhone($value);

	public function deleteByCityName($value);

	public function deleteByStateId($value);

	public function deleteByCountryId($value);

	public function deleteByAddress($value);

	public function deleteByFax($value);

	public function deleteByCompany($value);

	public function deleteByPhoto($value);

	public function deleteByZip($value);

	public function deleteByUserId($value);

	public function deleteByCreatedBy($value);

	public function deleteByCreateDate($value);

	public function deleteByUpdatedBy($value);

	public function deleteByUpdatedDate($value);

	public function deleteByStatus($value);


}
?>